package com.ocean.admin.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ocean.admin.entity.SysDept;
import com.ocean.admin.model.dto.dept.DeptQueryDTO;
import com.ocean.admin.model.dto.dept.DeptSaveDTO;
import com.ocean.admin.model.dto.dept.DeptUpdateDTO;
import com.ocean.admin.model.vo.dept.DeptVo;

import java.util.List;

/**
 * <p>
 * 部门表 服务类
 * </p>
 *
 * @author zhang
 * @since 2022-08-16
 */
public interface ISysDeptService extends IService<SysDept> {

    /**
     * 获取部门列表
     *
     * @param queryDTO 查询条件
     * @return 部门树
     */
    List<DeptVo> listTree(DeptQueryDTO queryDTO);

    /**
     * 新增部门
     *
     * @param saveDTO 部门信息
     * @return 结果
     */
    String deptSave(DeptSaveDTO saveDTO);

    /**
     * 修改部门
     *
     * @param updateDTO 部门信息
     * @return 结果
     */
    String updateDept(DeptUpdateDTO updateDTO);

    /**
     * 删除部门
     *
     * @param deptId 部门ID
     * @return 结果
     */
    String removeDept(Long deptId);
}
